package routes

import (
	"ginblog/api/v1"
	"ginblog/middleware"
	"ginblog/utils"
	"github.com/gin-gonic/gin"

)

func InitRouter() {
	gin.SetMode(utils.AppMode)
	r :=gin.New()
	r.Use(middleware.Loggoer())
	r.Use(gin.Recovery())

	auth := r.Group("api/v1")
	auth.Use(middleware.JwtToken())
	{
		// 用户模块的路由接口
		auth.PUT("user/:id",v1.EditUser)
		auth.DELETE("user/:id",v1.DeleteUser)
		// 分类模块的路由接口
		auth.POST("category/add", v1.AddCategory)

		auth.PUT("category/:id",v1.EditCate)
		auth.DELETE("category/:id",v1.DeleteCate)
		// 文章模块的路由接口
		auth.POST("article/add", v1.AddArticle)

		auth.PUT("article/:id",v1.EditArt)
		auth.DELETE("article/:id",v1.DeleteArt)
		// 上传文件
		auth.POST("upload",v1.Upload)

		auth.GET("users",v1.GetUsers)
		// 点赞
		auth.POST("praise/add", v1.AddPriase) // 文章点赞 status 0 点赞，1取消点赞

		auth.GET("category",v1.GetCate)

		auth.GET("article/list/:id",v1.GetCateArt) // 查询分类下所有文章
		auth.GET("article/info/:id",v1.GetArtInfo) // 查询单个文章详情
		auth.GET("article",v1.GetArt) // 查询文章列表

		auth.POST("comment/add", v1.AddComment) // 添加评论
		auth.GET("comment/:id",v1.GetCommentList) // 文章的评论列表

		auth.POST("commentPraise/add", v1.AddCommentPraise) // 评论点赞 status 0 点赞，1取消点赞

		auth.POST("fan/add", v1.AddFan) // 用户关注 status 0 点赞，1取消点赞
		auth.GET("fan/followList", v1.GetFollowList) // 我的关注列表
		auth.GET("fan/fanList", v1.GetFanList) // 我的粉丝列表




	}
	router := r.Group("api/v1")
	{
		// get不需要token验证权限，其他的上面的方法需要token验证权限 登录注册不需要，其他的都需要token验证
		router.POST("user/add", v1.AddUser)

		router.POST("login",v1.Login)

	}

	r.Run(utils.HttpPort)
}
